package com.hmall.common.client;

import com.hmall.common.dto.Item;
import com.hmall.common.dto.PageDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;


@FeignClient(value = "itemservice")
public interface ItemClient {
    //分页查询：1在config中配置bean（Interceptor）
    @GetMapping("/item/list")
    public PageDTO<Item> queryItemByPage(@RequestParam("page") Integer page, @RequestParam("size") Integer size);

    //根据id进行查询，同步数据
    @GetMapping("/item/{id}")
    public Item queryItemById(@PathVariable("id") Long id);

    //扣减库存
    @PutMapping("/item/stock/{itemId}/{num}")
    public void updateStock(@PathVariable("itemId") Long itemId,@PathVariable("num") Integer num);

}
